Haskell es un
lenguaje de programación funcional e
interpretado que obtuvo su nombre del lógico
Haskell Curry. Fue creado por un comité en los
años 1980 con el objetivo específico de definir dicho lenguaje.
El lenguaje evoluciona rápidamente con y (ver más abajo) como los representantes actuales del estándar
de facto. El último estándar
semi-oficial es
Haskell 98, con la intención de especificar una versión mínima y compatible del lenguaje como base para futuras extensiones y para su enseñanza.
Las características más interesantes de
Haskell incluyen el soporte para
tipos de datos y funciones
recursivas, listas,
tuplas, guardas y reconocimiento de patrones. La combinación de las mismas pueden resultar en algunas funciones casi triviales cuya versión en
lenguajes imperativos pueden llegar a resultar extremadamente tediosas de programar.
Haskell es, desde 2002, uno de los
lenguajes funcionales sobre los que más se ha investigado. Se han desarrollado muchas variantes:
●
Versiones paralelas del
MIT y , ambas denominadas
Parallel Haskell.
● Más versiones paralelas y distribuidas de
Haskell llamadas
Distributed Haskell (anteriormente
Goffin) y Eden
● Una version con ejecución especulativa:
Eager Haskell ● Varias versiones
orientadas a objetos:
Haskell++,
O'Haskell y
Mondrian.
● Una versión educativa llamada Gofer desarrollada por Mark Jones que fue suplantada por HUGS (ver abajo).